package com.scs.application.modules.sys.entity;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.TableName;
import com.scs.application.core.entity.DataEntity;
import com.scs.application.modules.upgrade.db.annotation.EntityClassAnnotation;
import com.scs.application.modules.upgrade.db.annotation.EntityFieldAnnotation;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * <p>
 * DataView表
 * </p>
 */
@Data
@EntityClassAnnotation(remark = "视图表")
@TableName("sys_data_view")
@Accessors(chain = true)
public class DataView extends DataEntity {

    @EntityFieldAnnotation(
            text = "",
            length = "50",
            not_null = true,
            default_value = "",
            comment = "视图Key"
    )
    private String viewKey;

    @EntityFieldAnnotation(
            text = "",
            length = "50",
            not_null = true,
            default_value = "",
            comment = "视图名称"
    )
    private String viewName;

    @EntityFieldAnnotation(
            text = "",
            length = "50",
            default_value = "",
            comment = "模块名称"
    )
    private String moduleName;

    @EntityFieldAnnotation(
            text = "",
            length = "50",
            default_value = "",
            comment = "视图备注"
    )
    private String description;

    @EntityFieldAnnotation(
            text = "",
            length = "20",
            default_value = "",
            comment = "视图类型"
    )
    private String viewType;

    @EntityFieldAnnotation(
            text = "",
            length = "20",
            default_value = "",
            comment = "视图列"
    )
    private JSONArray columns;

    @EntityFieldAnnotation(
            text = "",
            length = "20",
            default_value = "",
            comment = "视图信息"
    )
    private JSONObject jsonObject;
}
